class Solution {
public:
    bool lemonadeChange(vector<int>& bills) {
        //手上的零钱
        int five=0,ten=0;
        //开始找钱
        for(auto e:bills)
        {
            if(e==5)            //5块不用找
            {
                five++; 
                continue;       //找下一个顾客   
            }
            else if(e==10)      //10块，有五块就找
            {
                if(five)      
                {
                    five--;
                    ten++;
                    continue;   //找下一个顾客
                }
            }
            else                //20块有两个策略
            {
                //优先（采用）
                if(ten&&five)
                {
                    ten--;
                    five--;
                    continue;   //找下一个顾客
                }
                //第二个方案3张5块
                if(five>=3)
                {
                    five-=3;
                    continue;
                }
            }
            return false;       //无法找零钱
        }
        return true;            //找零钱成功
    }
};